package com.xoa.dao.performance.leaderAssessment;

import com.xoa.model.performance.ScoreGroup;
import com.xoa.model.performance.ScoreGroupWithBLOBs;
import com.xoa.model.performance.leaderAssessment.ScoreGroupLeader;
import com.xoa.model.performance.leaderAssessment.ScoreGroupLeaderExample;
import com.xoa.model.performance.leaderAssessment.ScoreGroupLeaderWithBLOBs;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface ScoreGroupLeaderMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int countByExample(ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int deleteByExample(ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int deleteByPrimaryKey(Integer groupId);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int insert(ScoreGroupLeaderWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int insertSelective(ScoreGroupLeaderWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    List<ScoreGroupLeaderWithBLOBs> selectByExampleWithBLOBs(ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    List<ScoreGroupLeader> selectByExample(ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    ScoreGroupLeaderWithBLOBs selectByPrimaryKey(Integer groupId);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByExampleSelective(@Param("record") ScoreGroupLeaderWithBLOBs record, @Param("example") ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByExampleWithBLOBs(@Param("record") ScoreGroupLeaderWithBLOBs record, @Param("example") ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByExample(@Param("record") ScoreGroupLeader record, @Param("example") ScoreGroupLeaderExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByPrimaryKeySelective(ScoreGroupLeaderWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByPrimaryKeyWithBLOBs(ScoreGroupLeaderWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table score_group_leader
     *
     * @mbggenerated
     */
    int updateByPrimaryKey(ScoreGroupLeader record);

    List<ScoreGroupLeaderWithBLOBs> selectAllBy(Map<String, Object> map);

    List<ScoreGroupLeaderWithBLOBs> selectByGroupIds(@Param("groupIds") String[] groupIds);

    List<ScoreGroupLeaderWithBLOBs> selectByTypeId(@Param("typeId")String typeId);
}